Walking Downhill

Gradient Descent


경사하강법(gradient descent)은 현재 매개변수에서 도함수나 그래디언트를 계산하고 그 반대 방향으로 학습률(learning rate) η만큼 갱신하기를 반복한다. η와 목적함수의 모양이 도착점과 수렴 여부를 정한다.

갱신 규칙θ⁽ᵗ⁾ = θ⁽ᵗ⁻¹⁾ − η f′(θ⁽ᵗ⁻¹⁾)이며 기울기의 부호 반대로 움직인다.
학습률 η갱신 폭을 정하는 하이퍼파라미터이며 너무 크면 발산할 수 있다.
국소 최솟값주변에서 가장 작은 값이며 비볼록 함수에서는 전역 최솟값과 다를 수 있다.

학습률이 갱신 폭을 정하고, 너무 크면 최솟점을 지나쳐 발산한다

f(x) = (x − 2)²에서 시작점, 학습률 η, 반복 횟수를 바꾸면 갱신 경로와 현재 x, 도함수, 다음 x가 바뀐다.

경사하강법 경로포물선 위의 갱신 경로
파란 곡선은 f(x) = (x − 2)², 짙은 점은 지난 위치, 초록 점은 t번 갱신한 뒤의 위치, 초록 선은 갱신 한 번의 이동이다. 그림 밖으로 나간 점은 가장자리에 표시한다.

비볼록 함수에서는 시작점에 따라 도착하는 최솟값이 다르다

같은 η = 0.1로 40번 갱신할 때 시작점 x₀을 바꾸면 도착하는 골짜기와 목적함수 값이 바뀐다.

비볼록 함수의 경사하강법두 골짜기가 있는 함수
파란 곡선은 두 골짜기가 있는 f(x) = x⁴/20 − x² + x/2 + 7이다. 짙은 점선은 전역 최솟점, 초록 점은 40번 갱신한 뒤의 위치, 짙은 작은 점은 지나온 경로다.